package cn.xtcode.types.design.framework.link.model2.handler;

/**
 * @author xt-study
 * @description 责任链上的每一个节点必须实现的接口，里边真正干事的类
 * 每个处理器实现这个接口，决定是否处理请求，或者将请求传递给下一个处理器。
 * @create 2025-01-18 09:43
 */
public interface ILogicHandler<T, D, R> {
    /**
     * 将请求传递给下一个节点
     */
    default R next(T requestParameter, D dynamicContext) {
        //用返回值来表达下一个。我操你妈
        return null;
    }

    R apply(T requestParameter, D dynamicContext) throws Exception;

}
